//////////////////////////////////////////////
// DefaultAllocator.h
//
//////////////////////////////////////////////

/// Defines / Macros -------------------------

#pragma once

/// Includes ---------------------------------

// nkMemory
#include "Allocator.h"

/// Class ------------------------------------

namespace nkMemory
{
	template <typename T>
	class DefaultAllocator final : public Allocator<T>
	{
		public :

			// Constructeur, destructeur
			DefaultAllocator () noexcept = default ;
			virtual ~DefaultAllocator () = default ;

			// Allocation
			virtual T* allocate () override
			{
				return new T () ;
			}
	} ;
}